package interfacesSIAB;

import java.awt.BorderLayout;
import javax.swing.JPanel;
import javax.swing.JFrame;
import java.awt.Dimension;
import java.awt.Rectangle;
import javax.swing.BorderFactory;
import javax.swing.border.TitledBorder;
import java.awt.Font;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;

import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.JButton;

import administrador.gestion_de_clientes;
import administrador.gestion_de_proveedores;

public class BuscarProveedor extends JFrame {

	private static final long serialVersionUID = 1L;
	private JPanel jContentPane = null;
	private JPanel jPanel = null;
	private JLabel jLabel3 = null;
	private JLabel jLabel4 = null;
	private JLabel email = null;
	private JTextField telefonoProveedor = null;
	private JTextField direccionProveedor = null;
	private JTextField emailProveedor = null;
	private JPanel jPanel1 = null;
	private JButton buscar1 = null;
	private JLabel jLabel5 = null;
	private JTextField codigoBusqueda = null;
	private JButton Guardar = null;
	private JButton cancelar = null;
	private JTextField codEmpresa = null;
	private JLabel jLabel = null;
	private JLabel jLabel2 = null;
	private JTextField nombreProveedor = null;
	private JButton Editar = null;
	/**
	 * This is the default constructor
	 */
	public BuscarProveedor() {
		super();
		initialize();
	}

	/**
	 * This method initializes this
	 * 
	 * @return void
	 */
	private void initialize() {
		this.setSize(372, 453);
		this.setResizable(false);
		this.setContentPane(getJContentPane());
		this.setTitle("Buscar Proveedor");
	}

	/**
	 * This method initializes jContentPane
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getJContentPane() {
		if (jContentPane == null) {
			jLabel2 = new JLabel();
			jLabel2.setText("  Nombre de la Empresa");
			jLabel2.setBounds(new Rectangle(12, 33, 135, 16));
			jLabel = new JLabel();
			jLabel.setText("Codigo de la Empresa");
			jLabel.setBounds(new Rectangle(17, 66, 123, 16));
			jContentPane = new JPanel();
			jContentPane.setLayout(null);
			jContentPane.add(getJPanel(), null);
			jContentPane.add(getJPanel1(), null);
			jContentPane.add(getGuardar(), null);
			jContentPane.add(getCancelar(), null);
			jContentPane.add(getEditar(), null);
		}
		return jContentPane;
	}

	/**
	 * This method initializes jPanel	
	 * 	
	 * @return javax.swing.JPanel	
	 */
	private JPanel getJPanel() {
		if (jPanel == null) {
			email = new JLabel();
			email.setBounds(new Rectangle(88, 160, 37, 16));
			email.setText("  Email");
			jLabel4 = new JLabel();
			jLabel4.setBounds(new Rectangle(73, 97, 60, 16));
			jLabel4.setText("  Direccion");
			jLabel3 = new JLabel();
			jLabel3.setBounds(new Rectangle(73, 127, 55, 16));
			jLabel3.setText("  Telefono");
			jPanel = new JPanel();
			jPanel.setLayout(null);
			jPanel.setBounds(new Rectangle(14, 161, 323, 221));
			jPanel.setBorder(BorderFactory.createTitledBorder(BorderFactory.createMatteBorder(1, 1, 1, 1, Color.orange), "Datos Proveedor", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, new Font("Dialog", Font.BOLD, 12), new Color(51, 51, 51)));
			jPanel.add(jLabel3, null);
			jPanel.add(jLabel4, null);
			jPanel.add(email, null);
			jPanel.add(getTelefonoProveedor(), null);
			jPanel.add(getDireccionProveedor(), null);
			jPanel.add(getEmailProveedor(), null);
			jPanel.add(getCodEmpresa(), null);
			jPanel.add(jLabel, null);
			jPanel.add(jLabel2, null);
			jPanel.add(getNombreProveedor(), null);
		}
		return jPanel;
	}

	/**
	 * This method initializes telefonoProveedor	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getTelefonoProveedor() {
		if (telefonoProveedor == null) {
			telefonoProveedor = new JTextField();
			telefonoProveedor.setBounds(new Rectangle(160, 126, 115, 20));
			telefonoProveedor.setEnabled(false);
		}
		return telefonoProveedor;
	}

	/**
	 * This method initializes direccionProveedor	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getDireccionProveedor() {
		if (direccionProveedor == null) {
			direccionProveedor = new JTextField();
			direccionProveedor.setBounds(new Rectangle(163, 98, 114, 20));
			direccionProveedor.setEnabled(false);
		}
		return direccionProveedor;
	}

	/**
	 * This method initializes emailProveedor	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getEmailProveedor() {
		if (emailProveedor == null) {
			emailProveedor = new JTextField();
			emailProveedor.setBounds(new Rectangle(159, 163, 115, 20));
			emailProveedor.setEnabled(false);
		}
		return emailProveedor;
	}

	/**
	 * This method initializes jPanel1	
	 * 	
	 * @return javax.swing.JPanel	
	 */
	private JPanel getJPanel1() {
		if (jPanel1 == null) {
			jLabel5 = new JLabel();
			jLabel5.setBounds(new Rectangle(9, 18, 76, 16));
			jLabel5.setText("Codigo");
			jPanel1 = new JPanel();
			jPanel1.setLayout(null);
			jPanel1.setBounds(new Rectangle(14, 19, 329, 57));
			jPanel1.setBackground(new Color(244, 206, 9));
			jPanel1.setBorder(BorderFactory.createLineBorder(Color.orange, 1));
			jPanel1.add(getBuscar1(), null);
			jPanel1.add(jLabel5, null);
			jPanel1.add(getCodigoBusqueda(), null);
		}
		return jPanel1;
	}

	/**
	 * This method initializes buscar1	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getBuscar1() {
		if (buscar1 == null) {
			buscar1 = new JButton();
			buscar1.setBounds(new Rectangle(230, 15, 82, 24));
			buscar1.setText("Buscar");
			buscar1.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
				
				
				
					try {
						
						
						if(getCodigoBusqueda().getText().trim().length() > 0 )
						{
					
					
					gestion_de_proveedores buscar= new gestion_de_proveedores();
					
					ArrayList resultado = buscar.buscarProveedor(Integer.parseInt(getCodigoBusqueda().getText()));
					if(resultado.size()!=0){
						getNombreProveedor().setText((String) resultado.get(0));
						getCodEmpresa().setText( String.valueOf(resultado.get(1)));
						getDireccionProveedor().setText((String) resultado.get(2));
						getTelefonoProveedor().setText(String.valueOf(resultado.get(3)));						
						getEmailProveedor().setText((String) resultado.get(4));
						
						 setEstadoEdicion2(false);					
						 getCodEmpresa().setRequestFocusEnabled(false); 
						 getNombreProveedor().setRequestFocusEnabled(false);
						 getTelefonoProveedor().setRequestFocusEnabled(false);
						 getDireccionProveedor().setRequestFocusEnabled(false);
						 getEmailProveedor().setRequestFocusEnabled(false);
						
					}
					
		
					
					
						}else{
							
							JOptionPane.showMessageDialog(null,"Por favor Debe de Ingresar la Cedula");
						}
					}
					catch (Exception e1) {
						JOptionPane.showMessageDialog(null,"El siguiente campo no puede contener caracteres"+ e1.getMessage() );
					    e1.printStackTrace();
					    
					 
					}
					
				
				
				
				
				
				
				
				
				
				
				
				
				
				}
			});
		}
		return buscar1;
	}

	/**
	 * This method initializes codigoBusqueda	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getCodigoBusqueda() {
		if (codigoBusqueda == null) {
			codigoBusqueda = new JTextField();
			codigoBusqueda.setBounds(new Rectangle(102, 17, 99, 20));
		}
		return codigoBusqueda;
	}

	/**
	 * This method initializes Guardar	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getGuardar() {
		if (Guardar == null) {
			Guardar = new JButton();
			Guardar.setBounds(new Rectangle(16, 93, 97, 26));
			Guardar.setEnabled(false);
			Guardar.setText("Guardar");
			Guardar.addActionListener(new ActionListener() {   
				public void actionPerformed(java.awt.event.ActionEvent e) {    
				
                  try {
						
						 
						
						
						if(getNombreProveedor().getText().trim().length() > 0 )
						{
							
								if(getCodEmpresa().getText().trim().length() > 0)
								
								{
																	
									gestion_de_proveedores actualizar= new gestion_de_proveedores();
									actualizar.actualizarInfoProveedor(getNombreProveedor().getText(),Integer.parseInt(getCodEmpresa().getText()),getDireccionProveedor().getText(),Integer.parseInt(getTelefonoProveedor().getText()),getEmailProveedor().getText());
								
									
									 setEstadoEdicion2(false);					
									 getEditar().setRequestFocusEnabled(true);
									 getCodEmpresa().setRequestFocusEnabled(false); 
									 getNombreProveedor().setRequestFocusEnabled(false);
									 getTelefonoProveedor().setRequestFocusEnabled(false);
									 getDireccionProveedor().setRequestFocusEnabled(false);
									 getEmailProveedor().setRequestFocusEnabled(false);
							         
									 
									
								}
								else{
									JOptionPane.showMessageDialog(null,"Por favor Debe de Ingresar la Cedula");
								}
								
								
							}
							else{
								JOptionPane.showMessageDialog(null,"Por favor Debe de Ingresar el Apellido");
							}
						
						}
						catch (Exception e1) {
							JOptionPane.showMessageDialog(null,"El siguiente campo no puede contener caracteres"+ e1.getMessage() );
						    e1.printStackTrace();
						}
				
				
				
				
				
				
				
				
				}
				
			
			
			});	
		}
		return Guardar;
	}

	/**
	 * This method initializes cancelar	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getCancelar() {
		if (cancelar == null) {
			cancelar = new JButton();
			cancelar.setBounds(new Rectangle(259, 93, 97, 26));
			cancelar.setText("Salir");
			
cancelar.addActionListener(new ActionListener() {
				
				@Override
				public void actionPerformed(ActionEvent e) {
					
					dispose();
				}
			});
			
			
			
			
			
			
			
			
			
			
		}
		
		
		return cancelar;
	}

	/**
	 * This method initializes codEmpresa	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getCodEmpresa() {
		if (codEmpresa == null) {
			codEmpresa = new JTextField();
			codEmpresa.setBounds(new Rectangle(163, 64, 116, 20));
			codEmpresa.setEnabled(false);
		}
		return codEmpresa;
	}

	/**
	 * This method initializes nombreProveedor	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getNombreProveedor() {
		if (nombreProveedor == null) {
			nombreProveedor = new JTextField();
			nombreProveedor.setBounds(new Rectangle(161, 34, 128, 19));
			nombreProveedor.setEnabled(false);
		}
		return nombreProveedor;
	}
	
	
	
	
public void  setEstadoEdicion(boolean isEdicion) {
		
		getCodigoBusqueda().setEnabled( ! isEdicion);
	    getNombreProveedor().setEnabled( isEdicion);
		getCodEmpresa().setEnabled( ! isEdicion);
		getTelefonoProveedor().setEnabled( isEdicion);
		getDireccionProveedor().setEnabled( isEdicion);
		getEmailProveedor().setEnabled( isEdicion);
		
	
		
		
		getGuardar().setEnabled( isEdicion);
	    getEditar().setEnabled( ! isEdicion);
	  
		
		
		
		
		
	}




public void  setEstadoEdicion2(boolean isEdicion) {
	
	getCodigoBusqueda().setEnabled( ! isEdicion);
    getNombreProveedor().setEnabled( !isEdicion);
	getCodEmpresa().setEnabled( ! isEdicion);
	getTelefonoProveedor().setEnabled( !isEdicion);
	getDireccionProveedor().setEnabled( !isEdicion);
	getEmailProveedor().setEnabled( !isEdicion);
	
   
	
	
	getGuardar().setEnabled( isEdicion);
    getEditar().setEnabled( ! isEdicion);
  
	
	
	
	
	
}

/**
 * This method initializes Editar	
 * 	
 * @return javax.swing.JButton	
 */
private JButton getEditar() {
	if (Editar == null) {
		Editar = new JButton();
		Editar.setBounds(new Rectangle(137, 93, 97, 26));
		Editar.setEnabled(false);
		Editar.setText("Editar");
		Editar.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java.awt.event.ActionEvent e) {
			
				setEstadoEdicion(true);
				
				getCodigoBusqueda().setRequestFocusEnabled(true);
			
				getNombreProveedor().setRequestFocusEnabled(true);
				getCodEmpresa().setRequestFocusEnabled(false);
			    getTelefonoProveedor().setRequestFocusEnabled(true);
			    getDireccionProveedor().setRequestFocusEnabled(true);
			    getEmailProveedor().setRequestFocusEnabled(true);
			    
			    
			    getGuardar().setRequestFocusEnabled(false);
			
			
			
			}
		});
	}
	return Editar;
}
	
	
	
	
	
	

}  //  @jve:decl-index=0:visual-constraint="10,10"
